/*! * ScrollSmoother 3.12.1 * https://greensock.com * * @license Copyright 2023, GreenSock. All rights reserved. * Subject to the terms at https://greensock.com/standard-license or for Club GreenSock members, the agreement issued with that membership. * @author: Jack Doyle, jack@greensock.com */ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self).window=e.window||{})}(this,(function(e){"use strict";function t(e,t){for(var r=0;r=i())&&(n=((r=i())-(t=e.ratio<0||1Math.abs(c)?a:c)/(1-t),d=-f*t;return 0t.end&&(a+=t.distance),n-=t.distance}o=_+a+P*((s.utils.clamp(e.start,e.end,r)-e.start-a)/(n-e.start)-w)}E.length&&!m&&E.forEach((function(e){return e(o-a)})),o=function(e){return Math.round(1e5*e)/1e5||0}(o+b),y?(y.resetTo("y",o,-ae,!0),le&&y.progress(1)):(C.y=o+"px",C.renderTransform(1))}}})),s.core.getCache(g.trigger).stRevert=A,g.startY=_,g.pins=x,g.markers=E,g.ratio=d,g.autoSpeed=m,e.style.willChange="transform"),g}a||T.register(s)||console.warn("Please gsap.registerPlugin(ScrollSmoother)"),e=this.vars=e||{},g&&g.kill(),w(g=this);var z,F,B,H,I,L,O,U,q,V,j,D,Y,K,W,G=e.smoothTouch,J=e.onUpdate,Q=e.onStop,X=e.smooth,Z=e.onFocusIn,$=e.normalizeScroll,ee=e.wholePixels,te=this,re=e.effectsPrefix||"",ne=h.getScrollFunc(l),oe=1===h.isTouch?!0===G?.8:parseFloat(G)||0:0===X||!1===X?0:parseFloat(X)||.8,ie=oe&&+e.speed||1,se=0,ae=0,le=1,ce=m(0),ue={y:0},fe="undefined"!=typeof ResizeObserver&&!1!==e.autoResize&&new ResizeObserver((function(){if(!h.isRefreshing){var e=i(F)*ie;e<-se&&_(e),b.restart(!0)}}));function de(){return B=z.clientHeight,z.style.overflow="visible",f.style.height=l.innerHeight+(B-l.innerHeight)/ie+"px",B-l.innerHeight}k(),h.addEventListener("killAll",k),s.delayedCall(.5,(function(){return le=0})),this.scrollTop=_,this.scrollTo=function(e,r,n){var o=s.utils.clamp(0,i(),isNaN(e)?t.offset(e,n):+e);r?V?s.to(t,{duration:oe,scrollTop:o,overwrite:"auto",ease:v}):ne(o):_(o)},this.offset=function(e,t){var r,n=(e=d(e)[0]).style.cssText,o=h.create({trigger:e,start:t||"top top"});return I&&(le?h.refresh():E([o],!0)),r=o.start/ie,o.kill(!1),e.style.cssText=n,s.core.getCache(e).uncache=1,r},this.content=function(e){if(arguments.length){var t=d(e||"#smooth-content")[0]||console.warn("ScrollSmoother needs a valid content element.")||f.children[0];return t!==z&&(q=(z=t).getAttribute("style")||"",fe&&fe.observe(z),s.set(z,{overflow:"visible",width:"100%",boxSizing:"border-box",y:"+=0"}),oe||s.set(z,{clearProps:"transform"})),this}return z},this.wrapper=function(e){return arguments.length?(F=d(e||"#smooth-wrapper")[0]||function(e){var t=c.querySelector(".ScrollSmoother-wrapper");return t||((t=c.createElement("div")).classList.add("ScrollSmoother-wrapper"),e.parentNode.insertBefore(t,e),t.appendChild(e)),t}(z),U=F.getAttribute("style")||"",de(),s.set(F,oe?{overflow:"hidden",position:"fixed",height:"100%",width:"100%",top:0,left:0,right:0,bottom:0}:{overflow:"visible",position:"relative",width:"100%",height:"auto",top:"auto",bottom:"auto",left:"auto",right:"auto"}),this):F},this.effects=function(e,t){if(I=I||[],!e)return I.slice(0);(e=d(e)).forEach((function(e){for(var t=I.length;t--;)I[t].trigger===e&&I[t].kill()}));var r,n,o=(t=t||{}).speed,i=t.lag,s=t.effectsPadding,a=[];for(r=0;rr._dp._time,D=se,ue.y=0,oe&&(1===h.isTouch&&(F.style.position="absolute"),F.scrollTop=0,1===h.isTouch&&(F.style.position="fixed"))}},onRefresh:function(e){e.animation.invalidate(),e.setPositions(e.start,de()/ie),Y||o(e),ue.y=-ne()*ie,S(ue.y),le||e.animation.progress(s.utils.clamp(0,1,D/ie/-e.end)),Y&&(e.progress-=.001,e.update()),T.isRefreshing=!1},id:"ScrollSmoother",scroller:l,invalidateOnRefresh:!0,start:0,refreshPriority:-9999,end:function(){return de()/ie},onScrubComplete:function(){ce.reset(),Q&&Q(t)},scrub:oe||!0}),this.smooth=function(t){return arguments.length&&(ie=(oe=t||0)&&+e.speed||1,H.scrubDuration(t)),H.getTween()?H.getTween().duration():0},H.getTween()&&(H.getTween().vars.ease=e.ease||v),this.scrollTrigger=H,e.effects&&this.effects(!0===e.effects?"[data-"+re+"speed], [data-"+re+"lag]":e.effects,{effectsPadding:e.effectsPadding}),e.sections&&this.sections(!0===e.sections?"[data-section]":e.sections),pe.forEach((function(e){e.vars.scroller=F,e.revert(!1,!0),e.init(e.vars,e.animation)})),this.paused=function(e,t){return arguments.length?(!!V!==e&&(e?(H.getTween()&&H.getTween().pause(),ne(-se/ie),ce.reset(),(j=h.normalizeScroll())&&j.disable(),(V=h.observe({preventDefault:!0,type:"wheel,touch,scroll",debounce:!1,allowClicks:!0,onChangeY:function(){return _(-se)}})).nested=y(u,"wheel,touch,scroll",!0,!1!==t)):(V.nested.kill(),V.kill(),V=0,j&&j.enable(),H.progress=(-se/ie-H.start)/(H.end-H.start),o(H))),this):!!V},this.kill=this.revert=function(){t.paused(!1),o(H),H.kill();for(var e=(I||[]).concat(L||[]),r=e.length;r--;)e[r].kill();h.scrollerProxy(F),h.removeEventListener("killAll",k),h.removeEventListener("refresh",P),F.style.cssText=U,z.style.cssText=q;var n=h.defaults({});n&&n.scroller===F&&h.defaults({scroller:l}),t.normalizer&&h.normalizeScroll(!1),clearInterval(O),g=null,fe&&fe.disconnect(),f.style.removeProperty("height"),l.removeEventListener("focusin",C)},this.refresh=function(e,t){return H.refresh(e,t)},$&&(this.normalizer=h.normalizeScroll(!0===$?{debounce:!0,content:!oe&&z}:$)),h.config(e),"overscrollBehavior"in l.getComputedStyle(f)&&s.set([f,u],{overscrollBehavior:"none"}),"scrollBehavior"in l.getComputedStyle(f)&&s.set([f,u],{scrollBehavior:"auto"}),l.addEventListener("focusin",C),O=setInterval(r,250),"loading"===c.readyState||requestAnimationFrame((function(){return h.refresh()}))}S.version="3.12.1",S.create=function(e){return g&&e&&g.content()===d(e.content)[0]?g:new S(e)},S.get=function(){return g},n()&&s.registerPlugin(S),e.ScrollSmoother=S,e.default=S,"undefined"==typeof window||window!==e?Object.defineProperty(e,"__esModule",{value:!0}):delete e.default}));